Many electronic devices (e.g., TVs, VCRs, DVD players, satellite receivers, set-top boxes, garage door openers, etc.) can be controlled by their corresponding remote controls. However, as one accumulates more electronic devices, these remote controls can cause undesirable clutter in one's home. Further, when a source remote control (SRC) is inadvertently misplaced, the corresponding device cannot be controlled by other remote controls.
Universal remote controls (URC) have been introduced to solve these problems. A URC typically can be programmed to control one or more electronic devices and, thus, can replace one or more source remote control. Typically, a user of a URC is provided with a manual which includes code sets for a plurality of source remote controls. The user has to determine the correct code set corresponding to each SRC to be programmed into the URC, then manually enter that code set into the URC. This process is tedious and time consuming. Further, if the manual for the URC is lost, the user will have no way to program the URC except by obtaining another manual from the manufacturer. In addition, the types (e.g., manufacturers & models) of SRCs that may be programmed into the URC are limited to the code sets provided in the manual.
Some URCs have the capability of being programmed without requiring the user to manually enter a code set. This type of URC is typically able to operate in a so-called “learning mode,” where the URC is able to duplicate a signal received from each key of a SRC and store that signal in memory. For example, commonly available URCs for consumer electronic devices (e.g., TVs, etc.), as well as for garage door openers (e.g., the HomeLink system) operate in this fashion. Programming a URC in a learning mode has several drawbacks. First, the URC can only duplicate signals from SRC keys that are physically pressed by the user. Thus, the user has to press every one of the keys on a SRC to be programmed. While this may be acceptable for single-key (or, equivalently, single-signal) devices such as garage door openers, it is inconvenient for multiple-key (or multiple-signal) devices such as TV remote controls. Second, duplication of signals can be time consuming. Third, the URC needs a relatively large memory space to store all the signals from the keys of each SRC to be programmed, thus increasing the cost of the URC. All of the foregoing illustrates that such “learning” remote controls are dumb devices that simply memorize the characteristics of any given SRC, rather than being able to recognize and identify a given SRC.
Thus, a market exists for a universal remote control that can be virtually automatically programmed, whereby a user will not need to select a code set from a manual, enter the code set manually, and teach the URC to learn each SRC key separately.